package com.miplus.ccrm.core.controller.vo.strategy;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

import javax.validation.constraints.NotNull;
import java.util.Date;
import java.util.List;

@Data
public class ActivityEditVo {
    /**
     * 主键ID,修改时必填
     */
    private Integer activityid;

    /**
     * 自动分案模板名
     */
    @NotNull
    private String name;

    /**
     * 状态
     */
    @NotNull
    private Integer status;

    /**
     * 备注
     */
    private String remark;

    /**
     * 业务类型(产品类型)
     */
    private String businesstype;

    /**
     * 下发客户区域（多选，逗号分隔）
     */
    private String city;

    /**
     * 下发对象类型
     */
    private Integer distype;

    /**
     * 责任单位
     */
    private String responsibleunit;

    /**
     * 委外机构或部门（多选，逗号分隔）
     */
    private String othergrp;

    /**
     * 逾期天数范围起
     */
    private Integer overday1;

    /**
     * 逾期天数范围止
     */
    private Integer overday2;

    /**
     * 生效日期起
     */
    @JsonFormat(pattern ="yyyy-MM-dd",timezone = "GMT+8")
    private Date availableday1;

    /**
     * 生效日期至
     */
    @JsonFormat(pattern ="yyyy-MM-dd",timezone = "GMT+8")
    private Date availableday2;

    /**
     * 指定部门
     */
    private String grpid;

    /**
     * 1按数量分配 2按金额分配
     */
    private Integer distype2;

    /**
     * 逾期期数起
     */
    private Integer mthsOdue;

    /**
     * 逾期期数止
     */
    private Integer mthsOdue2;

    /**
     * 客户标签（多选，逗号分隔）
     */
    private String custtags;

    /**
     * 1=不包括custtags标签，其它包括
     */
    private String noinctag;

    /**
     * 绑定天数
     */
    private Integer bindday;

    /**
     * 分案时间模式(字典ACTIVITY.DT.DISTMODE)
     */
    private String distdaymode;

    /**
     * 分案模板关联组LIST
     */
    private List<ActGrplinkVo> outgrplist;

    /**
     * 分案模板执行时间及回收时间
     */
    private List<ActExecDayVo> execdaylist;

    /**
     * A原始分类(五级分案),（多选，逗号分隔）
     */
    private String acctFlevel;
    /**
     * 分案模式，是否分配给上次的委案机构。
     */
    private Integer disablelastgrp;

    private Integer aftermonth;

    private String fixday;
   /**
     * 分案标签。
     */
    private String caseflag;
    /**
     * 回收类型：三位数字组成的字符串，格式为：A#B#C#D。其中
     * A为逾期阶段升级。 0：逾期阶段无关，1：升期回收，
     * B为逾期阶段降级。 0：无关，1：降级回收
     * C为逾期结清回收。0：逾期结清无关，1：逾期结清回收
     * D为案件结清回收。0：案件结清无关，1：案件结清回收
     */
    private String recycleType;
    /**
     * 委案金额类型。
     */
    private Integer amountType;
}
